package com.music.model;


/**
 * Class allowing the creation of an object artist It inherits from an artist
 * 
 * @author antho
 */
public class Album extends Artist {

	protected String albumName;
	protected String albumDate;

	// //////////////////////////////////////////////////////////////////////////////////////
	// ////// CONSTRUCTOR ////////
	// //////////////////////////////////////////////////////////////////////////////////////

	/**
	 * 
	 */
	public Album() {
		super();
	}

	/**
	 * @param album
	 *            : album name
	 * @param date
	 *            : album's date
	 * @param artist
	 *            : artist of the album
	 */
	public Album(String album, String date, String artist) {
		super(artist);
		this.albumName = album;
		this.albumDate = date;
	}

	// //////////////////////////////////////////////////////////////////////////////////////
	// ////// METHODS ////////
	// //////////////////////////////////////////////////////////////////////////////////////
	
	public boolean existAlbum(String s){
		return this.albumName.matches("^.*(?i)"+s+".*$");
//		return this.albumName.toLowerCase().contains(s);
	}
	
	// //////////////////////////////////////////////////////////////////////////////////////
	// ////// GETTER SETTER ////////
	// //////////////////////////////////////////////////////////////////////////////////////

	public void setAlbumCaracteristics(String art_name, String d, String alb_name) {
		this.albumDate = d;
		this.albumName = alb_name;
		super.setArtistName(art_name);
	}

	// //////////////////////////////////////////////////////////////////////////////////////
	// ////// AFFICHAGE ////////
	// //////////////////////////////////////////////////////////////////////////////////////

	public String toString() {
		return super.toString()+"Album : "+this.albumName+" "+this.albumDate+"\n";
	}
}
